embedded pcb layout pcb design embedded systems open source unix windows microcontroller development avr linux pic pcb assembly atmel software pcb